定义char *st="how are you "; 为什么char a[ ],*p;strcpy(p=&a[1],st+2);不对?

来源:百度知道 编辑:UC知道 时间:2024/05/21 07:21:33

char a[ ]的定义不对,除非你显示给他一个字符串让编译器自动计算这个字符数组a的上度,否则 只定义 char a[];是错误的
这样就是对的:
char a [] = "this is a sample";

即使定义了 我觉得 也不对 st 到底怎么解释??? 如果 它存储的 是一个 字符串数组的 首地址 那么 st+2就是不对的! 必须 定义个字符型指针 指向他 才可以移动! 这个地方我也没学好 希望 大虾们 出来帮忙解释解释! 谢